package com.lantosec.hmrp.modules.archives.entity;

import java.math.BigDecimal;
import java.util.Date;

import com.lantosec.hmrp.core.mvc.BaseEntity;
import com.lantosec.hmrp.modules.archives.vo.UserDutyVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;

/**
 * <p>
 * 领导干部落实党风廉政建设责任制情况表 实体类
 * </p>
 *
 * @author AutoCode
 * @since 2020-06-11
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserDuty extends BaseEntity<UserDutyVO> {

    private static final long serialVersionUID = 1L;
    public UserDuty(UserDutyVO vo){
        this.UserDutyId = vo.getUserDutyId();
        this.userId = vo.getUserId();
        this.littleBadPct = vo.getLittleBadPct();
        this.generalPct = vo.getGeneralPct();
        this.littleGoodPct = vo.getLittleGoodPct();
        this.goodPct = vo.getGoodPct();
        this.evalDate = vo.getEvalDate();
        this.evalConclude = vo.getEvalConclude();
        this.citeCase = vo.getCiteCase();
        this.dutyChargeCase = vo.getDutyChargeCase();
        this.processUnit = vo.getProcessUnit();
        this.refNo = vo.getRefNo();
        this.createId = vo.getCreateId();
        this.createUser = vo.getCreateUser();
        this.createTime = vo.getCreateTime();
        this.verifyId = vo.getVerifyId();
        this.verifyUser = vo.getVerifyUser();
        this.verifyTime = vo.getVerifyTime();
        this.verifyStatus = vo.getVerifyStatus();
    }

    @Override
    public UserDutyVO convertToVO(){
        return new UserDutyVO(this);
    }


    /**
     * 主键ID
     */
    @TableId(value = "User_duty_id", type = IdType.ASSIGN_UUID)
    private String UserDutyId;

    /**
     * 用户主表ID
     */
    private String userId;

    /**
     * 民主测评得票较差结果得票比例
     */
    private BigDecimal littleBadPct;

    /**
     * 民主测评得票一般结果得票比例
     */
    private BigDecimal generalPct;

    /**
     * 民主测评得票较好结果得票比例
     */
    private BigDecimal littleGoodPct;

    /**
     * 民主测评得票好结果得票比例
     */
    private BigDecimal goodPct;

    /**
     * 考核时间
     */
    private String evalDate;

    /**
     * 考核结论
     */
    private String evalConclude;

    /**
     * 受表彰情况
     */
    private String citeCase;

    /**
     * 被责任追究情况
     */
    private String dutyChargeCase;

    /**
     * 表彰或追究单位
     */
    private String processUnit;

    /**
     * 文号
     */
    private String refNo;

    /**
     * 创建人ID
     */
    private String createId;

    /**
     * 创建人姓名
     */
    private String createUser;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 审核人ID
     */
    private String verifyId;

    /**
     * 审核人姓名
     */
    private String verifyUser;

    /**
     * 审核时间
     */
    private Date verifyTime;

    /**
     * 审核状态（0：未审核，1：以审核）
     */
    private Integer verifyStatus;


    public enum ColName {
        User_duty_id, user_id, little_bad_pct, general_pct, little_good_pct, good_pct, eval_date, eval_conclude, cite_case, duty_charge_case, process_unit, ref_no, create_id, create_user, create_time, verify_id, verify_user, verify_time, verify_status,
    }
}
